Emanuele Iaccarino personal mark Emanuele Iaccarino personal mark E. Iaccarino
  • home
  • about
  • academic
  • projects
  • publications
  • awards & certifications
  • CV
  • get in touch!
    • LinkedIn
    • email

Community Detection Algorithms — Self-Implemented and Optimized

Graph Mining
Community Detection
Python
Research

A Python library implementing and optimizing community detection algorithms (Girvan-Newman, Spectral Clustering, Louvain) with significant performance improvements over NetworkX.

Published

January 1, 2025

This project introduces a Python library for community detection, focused on performance optimization, modularity, and transparency.
Compared to NetworkX’s implementations, the custom methods deliver faster execution and flexible configuration, while ensuring traceability through detailed logs.

Implemented algorithms
- Girvan-Newman: configurable betweenness calculation (BFS, Dijkstra) and component detection (recursive vs. iterative DFS)
- Spectral Clustering: optimized eigenvalue/eigenvector computation for faster convergence
- Louvain Method: mathematical approximation yielding extreme performance gains

Key results
- Girvan-Newman: execution time up to 38% faster with identical communities
- Spectral Clustering: 92% faster than pre-implemented versions, communities preserved
- Louvain: millions of times faster, with a small trade-off in modularity

View project on GitHub


Visualization of graph clustering with community detection algorithms

Custom, optimized community detection methods vs. standard implementations

© 2025 Emanuele Iaccarino

 

This website is built with , , and Quarto